package com.wjm.shootgame.shoot;

import com.wjm.shootgame.shoot.img.Images;

import java.awt.*;
import java.awt.image.BufferedImage;

/*
* 天空类
* */
public class Sky extends FlyingObject{
    //速度
    private int speed;
    //第二张图片的y轴坐标，因为x轴坐标都是0，所以就不写于第一张公共
    public int y1 ;


    //构造方法初始化
    public Sky(){
//        this.width=512;
//        this.height=768;
//        this.x=0;
//        this.y=0;
        super(0,0,512,768);
        this.speed=1;
        this.y1 = -height;
    }


    //用于输出初始化的值
    @Override
    public String toString() {
        return "Sky{" +
                "speed=" + speed +
                ", width=" + width +
                ", height=" + height +
                ", x=" + x +
                ", y=" + y +
                '}';
    }

    /**
     * 重写的获取图片的方法
     * @return 返回图片
     */
    @Override
    public BufferedImage getImage() {
        return Images.skyImage;
    }

    /**
     * 重写的移动方法
     */
    @Override
    public void move() {
        //让两张图片一起向下运动，速度一样，不会出现空隙
        y+=speed;
        y1+=speed;
        //判断第一张图片是否移动出面板，是的画将其y轴坐标重置
        if (y > height){
            y = -height;
        }
        //判断第二张图片是否移动出面板，是的画将其y轴坐标重置
        if (y1 > height){
            y1 = -height;
        }
    }

    /**
     * 判断是否越界的方法
     * @return 越界返回true，没越界返回false
     */
    @Override
    public boolean isOutBound() {
        return false;
    }

    /**
     * 重写的画画方法
     * @param g 相当于是画笔
     */
    @Override
    public void paintImage(Graphics g) {
        g.drawImage(this.getImage(),this.x,this.y,null);
        g.drawImage(this.getImage(),this.x,this.y1,null);
    }
}
